Adaptive beamforming has been used for several decades in a wide variety of applications such as radar, sonar, and more recently smart antennas for telecommunications and audio conferencing. In some applications, it is desirable to provide a plurality of adaptive beamformers having different look directions but the same response under equalization constraints.
One application where such design constraints arise is loudspeaker coupling equalization for audio conference systems, such as described in [1] F. Beaucoup and M. Tetelbaum, “A method for optimal microphone array design under uniform acoustic coupling constraints”, UK Patent Application No. 0321722.1, filed Sep. 16, 2003, and [2] F. Beaucoup, “Parallel beamformer design under response equalization constraints”, Proceedings of IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP) 2004, Montreal, Canada. In these references, optimal solutions have been proposed for the design of fixed (as opposed to adaptive) beamformers under such constraints. These solutions can be extended to the adaptive framework via a family of adaptive beamforming methods known as “block-adaptive” methods. However, another family of adaptive beamforming methods, known as “sample-by-sample” methods, are more appropriate for some applications, typically those where the operating environment is non-stationary. For these methods, the optimal fixed-beamforming solution set forth in [1] and [2] cannot be used.
As mentioned above, general adaptive beamforming can be performed either with block-adaptive methods or with sample-by-sample methods. Both families of methods and their characteristics are discussed in [3] D. G. Manolakis, V. K. Ingle and S. M. Kogon, “Statistical and adaptive signal processing”, McGraw-Hill, 2000.
Block-adaptive methods use a block of data received at the sensor array over a period of time to estimate the second-order statistics of the desired signal and/or the interference signal at the array. These statistics are collected in an interference-plus-noise correlation matrix and optimal, fixed beamforming design techniques such as Minimum-Variance-Distortionless-Response (MVDR) or Linearly-Constrained-Minimum-Variance (LCMV) are used to design the beamforming weights. This process is carried out over time to ensure adaptive behavior of the array processing.
With sample-by-sample methods, the beamforming weights are updated for each new sample of data coming to the array using adaptive filtering techniques. The convergence to the optimal beamforming weights is gradual, on a sample-by-sample basis; which ensure a constant, gradual adaptation to non-stationary environments. It should be noted that the process at each sample requires considerably less computation than the block-adaptive, “sample-matrix-inversion” process. Also, the steering vector (that is, the statistics of the desired signal) is deterministic and known a-priori as opposed to estimated from real-time data.
The inventor is unaware of any reference in the literature to the exact problem of adaptive beamforming under response equalization constraints. The only explicit references to the problem of beamforming design under response equalization constraints are set forth in [1] and [2] referred to above, and are restricted in their scope to the fixed beamforming framework. However, known techniques can be applied in a straightforward manner to solve this problem in the adaptive framework, both with block-adaptive methods and with sample-by-sample methods (although in a less-than-optimal manner in the latter case, as discussed below).
For a block-adaptive implementation, the “parallel design” method presented in [1] and [2] can be used directly as a “parallel sample-matrix inversion” implementation. With this approach, all beamformers are designed at the same time in an optimal manner given the equalization constraint. The parallel correlation matrix is calculated based on data statistics collected over a period of time just as it is in the traditional sample-matrix inversion implementation. However, as mentioned above, block-adaptive methods can be less appropriate than sample-by-sample methods for some applications, particularly for those where the operating environment is non-stationary.
To present a sample-by-sample implementation of a solution to the problem, it is necessary to understand the principle of sample-by-sample adaptive beamforming techniques.
Sample-by-sample adaptive beamforming methods rely on an algorithmic structure that transforms the initial constrained optimization problem (MVDR or LCMV) into an unconstrained optimization problem that is then solved as a least-square problem with an iterative optimization algorithm such as the least-mean-square (LMS) algorithm. The conventional structure for this transformation is known as the Generalized Side-lobe Canceller (GSC). The development of the GSC structure was motivated by the adaptive implementation set forth in [4] O. L. Frost, “An algorithm for linearly constrained adaptive array processing”, Proc. IEEE, Vol. 60, pp. 926–935, August 1972, and first formulated in [5] S. P. Applebaum and D. J. Chapman, “Adaptive arrays with main beam constraints”, IEEE Trans. on Antennas and Propagation, Vol. 24, pp. 650–662, September 1976 and [6] L. J. Griffiths and C. W. Jim, “An alternative approach to linearly constrained adaptive beamforming”, IEEE Trans. on Antennas and Propagation, Vol. 30, pp. 27–34, January 1982, where the GSC terminology was first coined. It has since then been used extensively in a wide variety of applications. References [3] and [7] B. D. Van Veen and K. M. Buckley, “Beamforming: a versatile approach to spatial filtering”, IEEE Acoustic, Speech and Signal Processing magazine, pp. 4–24, April 1988, provide more detailed presentations of the GSC structure. This structure can be used as a prior-art technique to solve the problem of multiple beamformer design under response equalization constraints as explained below.
With the same notations as in [1], the GSC structure can be formalized as follows for the general case of LCMV beamforming. If W=W(v) represents the frequency-domain complex weight array (column vector of length M equal to the number of sensors in the array), then the general LCMV optimization problem can be written as follows:       Min    W    ⁡      (                  W        H            ·      R      ·      W        )  subject to CH.W=G.
In this formulation, R=R(v) is the noise correlation matrix (size M×M), C=C(v) is the constraint matrix (size M by K where K is the number of constraints) and G=G(v) is the constraint gain vector (size K). The explicit solution is then given by the following formula:W=R−1.C[CH.R−1.C]−1G. 
The GSC structure is based on the realization that if a given beamformer W(0) satisfies the set of linear constraint imposed on the optimization problem; that is, CH.W(0)=G, then the difference between this beamformer W(0) and the solution to the constrained optimization problem lies in the null space of the constraint matrix C. In other words, the solution to the constrained optimization problem can be expressed as W=W(0)−V with Vεnull(C); that is, C.V=0. The constrained optimization problem is therefore equivalent to the following unconstrained optimization problem:             Min      V        ⁡          (                                    (                                          W                                  (                  0                  )                                            -              V                        )                    H                ·        R        ·                  (                                    W                              (                0                )                                      -            V                    )                    )        .
The GSC is a practical structure that allows the resolution of the unconstrained optimization problem by sample-by-sample unconstrained optimization algorithms. For this, the vector V is expressed as a linear combination of the columns of a M×(M−K) matrix B; that is, V=B.{tilde over (W)}, with {tilde over (W)} being a column vector of length (M−K). This is possible provided the columns of B form a basis for the null space of C. This formulation leads to the GSC structure shown in FIG. 1. Note that if the steering vector X is one of the linear constraints in C, or if it belongs to the linear space spanned by the constraints, then it is blocked by B, meaning that XHB=0 (i.e. the “blocking matrix” for the matrix B).
Practically, the upper branch of the GSC structure is a fixed beamformer that satisfies the constraints of the LCMV constrained optimization problem. The blocking matrix B is obtained from the constraint matrix C using any of several orthogonalization techniques such as Gram-Schmidt, QR decomposition or singular value decomposition (see [8] G. H. Golub and C. F. Van Loan, “Matrix computations”, The John Hopkins University Press, Baltimore, Md., 1989). The adaptive beamforming weights {tilde over (W)} are calculated adaptively with a sample-by-sample adaptive filtering algorithm such as LMS driven by the error y (see FIG. 1) so as to match the response of the lower branch to that of the upper branch and therefore minimize the response of the total, combined beamformer.
For the particular problem of multiple beamformer design under response equalization constraints, the conventional GSC structure can be used in the following manner, which will be understood by a person of ordinary skill in the art. First, one a set of fixed beamformers is designed W1(0), . . . ,WN(0) that satisfy the response equalization constraints as well as the distortionless constraints in their respective look directions. For example, this can be accomplished with the parallel beamformer design methods presented in [1] and [2]. Then, for each individual beamformer, perform adaptive beamforming with the GSC structure with two linear constraints (K=2): one for the look direction (with the response set to 1) and one for the equalization signal (with the response set to 0). This way, the lower branch of each individual GSC structure is guaranteed to block the equalization signal, and therefore each individual resulting beamformer is guaranteed to present the same response as its upper branch to the equalization signal. Since the fixed beamformers W1(0), . . . ,WN(0) satisfy the response equalization constraints, so do the combined resulting beamformers.
The drawback of this approach is that the common response of the beamformers to the equalization signal is constrained to stay constant, equal to the common response of the original fixed beamformers W1(0), . . . ,WN(0) throughout the adaptive process. As explained in [2], the optimal value for this common response value depends on the statistics of the steering vectors and a hard constraint to an arbitrary value can have severe effects on the directivity of the resulting beamformers. In non-stationary environments, the statistics vary with time and are not known in advance. Therefore constraining the response value to stay constant, equal to an arbitrary value, does not appear to be optimal in the context of the original response equalization constraints (these constraints only specify that all beamformers must have the same response to the equalization signal; not the actual response value).